package test.com.sms.selenium.singlepoint.util;

import org.openqa.selenium.By;

import test.com.sms.selenium.framework.SeleniumPageUtil;
import test.com.sms.selenium.util.SeleniumUtil;

public class SpYAccountCustomerDetailsContactsTabPageUtil extends SeleniumPageUtil {
	
	public final static By CDCT_SPAN_MAIN_HEADER = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_Header_lblHeader");
	public final static By CDCT_IMG_REPORT_PREFERENCES = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_Header_imgPreferences");
	public final static By CDCT_IMG_EXPORT = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_Header_imgExcelExport");
	public final static By CDCT_LINK_NEW = By.xpath("//*[@id='e0dce11b-40ad-4118-b5d9-84bb06c2b270']/a");
	public final static By CDCT_TD_PAGE = By.xpath("//*[@id='dvReport']/table[2]/tbody/tr/td[1]");
	public final static By CDCT_SPAN_PAGE_START_NO = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_PagingTop_lblPagingPageNumber");
	public final static By CDCT_TD_OF = By.xpath("//*[@id='dvReport']/table[2]/tbody/tr/td[3]");
	public final static By CDCT_SPAN_PAGE_COUNT = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_PagingTop_lblPagingPageCount");
	public final static By CDCT_INPUT_FIRST = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_PagingTop_imgFirst");
	public final static By CDCT_INPUT_PREVIOUS = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_PagingTop_imgPrevious");
	public final static By CDCT_INPUT_NEXT = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_PagingTop_imgNext");
	public final static By CDCT_INPUT_LAST = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_PagingTop_imgLast");
	public final static By CDCT_IMG_FILTER_0 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_0");
	public final static By CDCT_IMG_FILTER_1 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_1");
	public final static By CDCT_IMG_FILTER_2 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_2");
	public final static By CDCT_IMG_FILTER_3 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_3");
	public final static By CDCT_IMG_FILTER_4 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_4");
	public final static By CDCT_IMG_FILTER_5 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_5");
	public final static By CDCT_IMG_FILTER_6 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_6");
	public final static By CDCT_IMG_FILTER_7 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_7");
	public final static By CDCT_IMG_FILTER_8 = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_filter_8");
	public final static By CDCT_TH_DISPLAY_NAME = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_0");
	public final static By CDCT_TH_LAST_NAME = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_1");
	public final static By CDCT_TH_FIRST_NAME = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_2");
	public final static By CDCT_TH_TITLE = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_3");
	public final static By CDCT_TH_EMAIL_ADDRESS = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_4");
	public final static By CDCT_TH_PHONE_NUMBER_W = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_5");
	public final static By CDCT_TH_PHONE_NUMBER_M = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_6");
	public final static By CDCT_TH_TYPE = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_7");
	public final static By CDCT_TH_ACTIVE_FLAG = By.id("ParentChildContainer_CustomerDetails_Contacts1_ContactsReport_sort_8");
	
	
	public static void enterYourAccountCustomerDetailsContactsPage(){
		SpHomePageUtil.enter();
		SpHomePageUtil.enterYourAccountCustomerDetailsDefaultPage();
		SeleniumUtil.click(SeleniumUtil.getCachedElement(SpYAccountCustomerDetailsDefaultPageUtil.YACD_TAB_CONTACTS));
		waitForPageToLoad();
	}
	
	public static void waitForPageToLoad() {
		SeleniumUtil.selectDefaultContent();
		SeleniumUtil.selectFrame(SpHomePageUtil.HOME_FRAME_CONTENT_NAME);
		SeleniumUtil.waitOnElements(new By[]{
				CDCT_LINK_NEW, CDCT_IMG_REPORT_PREFERENCES, CDCT_IMG_EXPORT, CDCT_INPUT_FIRST, CDCT_INPUT_PREVIOUS, CDCT_INPUT_NEXT,
				CDCT_INPUT_LAST, CDCT_IMG_FILTER_0, CDCT_IMG_FILTER_1, CDCT_IMG_FILTER_2, CDCT_IMG_FILTER_3, CDCT_IMG_FILTER_4, CDCT_IMG_FILTER_5, 
				CDCT_IMG_FILTER_6, CDCT_IMG_FILTER_7, CDCT_IMG_FILTER_8
			});
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_LINK_NEW));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_REPORT_PREFERENCES));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_EXPORT));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_INPUT_FIRST));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_INPUT_PREVIOUS));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_INPUT_NEXT));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_INPUT_LAST));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_0));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_1));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_2));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_3));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_4));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_5));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_6));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_7));
		SeleniumUtil.isDisplayed(SeleniumUtil.findElement(CDCT_IMG_FILTER_8));
	}
}
